Automatically initiating product replenishment

ABSTRACT

A facility for automatically initiating product replenishment is described. The facility receives an indication of an order by a consumer for a first item having a first date, such as the date on which the first item was placed or fulfilled. The facility then determines a target date for replenishment based upon the identity of the first item. On the target date, the facility provides to the consumer an indication that the first item should be replenished. The indication includes a control useable by the customer to request replenishment of the first item. When this control is operated by the consumer, the facility receives an indication that the control is used by the consumer to request replenishment of the first item. In response to receiving indication the facility orders a second item to replenish the first item.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of provisional U.S. PatentApplication No. 60/169,721, filed Dec. 8, 1999 which is herebyincorporated by reference.

TECHNICAL FIELD

The present invention is directed to the field of electronic commerce,and, more particularly, to the field of marketing processes.

BACKGROUND

Because it facilitates electronic communications between merchants andpurchasers, the Internet is increasingly being used to conduct“electronic commerce.” The Internet comprises a vast number of computersand computer networks that are interconnected through communicationchannels. Electronic commerce refers generally to commercialtransactions that are at least partially conducted using the computersystems of the parties to the transactions. For example, a purchaser canuse a personal computer to connect via the Internet to a merchant'scomputer. The purchaser can then interact with the merchant's computerto conduct the transaction.

The World Wide Web application of the Internet is an especiallyeffective environment for electronic commerce. Many Web applicationshave been developed through which merchants can advertise and sellitems. In particular, many such “Web merchants” sell physical items,such as books, that are delivered through conventional physical shipmentchannels, such as a common carrier.

While Web merchants have gained significant market share fromtraditional storefront merchants for many types of products, consumershave demonstrated a measure of reluctance about purchasing some types ofproducts from Web merchants. In particular, consumable products such asfood staples and personal care items have proven difficult for Webmerchants to sell in significant quantities.

This is at least in part because of the way in which a consumer's needfor such consumable products commonly arises. It is common for aconsumer to first realize that a consumable product must be replenishedwhen the consumer exhausts his or her supply of the consumable product.For example, a consumer may not realize that he or she needs to purchasemore shaving gel until his or her current supply is exhausted. Becauseof the regularity with which many consumable items are used, suchproducts often must be replenished within a very short time of theirexhaustion. For example, a consumer may need to replenish exhaustedshaving gel within one day. Because of the short time in which mostconsumable products must be replenished, Web merchants are typicallyunable to deliver them in time. Further, aside from delivery timeissues, it seldom occurs to consumers to purchase such products from aWeb merchant.

This is unfortunate, since conventional approaches to this problem leavemuch to be desired. In order to replenish such products, it is typicalfor a consumer to make a special trip to a traditional storefrontmerchant, thereby expending significant time, as well as substantialexpense for fuel, parking, etc.

To address this issue, many purchasers go to the lengths of purchasingoutlandish quantities of such products in order to reduce the frequencywith which they must face the task of replenishing them. Such a strategyrequires the commitment of a large amount of space in the purchaser'scar and storage space in the purchaser's home, however, as well theacceleration of a significant aggregated cost.

Accordingly, a facility for automatically initiated replenishment ofsuch products would have significant utility.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a high-level block diagram showing the environment in whichthe facility preferably operates.

FIG. 2 is a display diagram showing a sample replenishment suggestionprovided by the facility.

FIG. 3 is a data structure diagram showing sample contents of areplenish table.

FIG. 4 is a data structure diagram showing sample contents of an itemtable.

FIG. 5 is a data structure diagram showing sample contents of a customertable.

FIG. 6 is a flow diagram showing the steps preferably performed by thefacility in order to present replenishment suggestions.

DETAILED DESCRIPTION

In a preferred embodiment, an item replenishment facility (“thefacility”) automatically initiates the replenishment of items such asphysical products. Based upon a variety of information, the facilityestablishes a target date on which an item presently being used by acustomer should probably be replenished. In advance of the target date,using the indication, the facility provides a replenishment suggestionto the customer through one of a variety of channels. The replenishmentsuggestion preferably indicates which products should be replenished,and preferably includes a control for the customer to use to request thereplenishment of the listed items. In response to the operation of thiscontrol by the customer, the facility places an order for the items onthe customer's behalf. The order is preferably placed with a Webmerchant associated with the operator of the facility, but may bealternatively placed with one of a larger list of affiliated merchants,or may be placed with a merchant identified as providing the best terms(in terms of such factors as price and delivery time) in a real-timesearch for merchants. In further preferred embodiments, thereplenishment suggestion generated by the facility contains additionalcontrols that enable the user to modify the order before approving it,or to defer or decline the replenishment suggestion. In a preferredembodiment, the facility initiates the replenishment of a particularitem in response to an explicit “subscription request” from the user forthe item. In some embodiments, the facility solicits such subscription,either at the time an order is placed for the item, when the userrequests information about the item, or at another time.

By anticipating the customer's need to replenish a product, the facilityprovides a convenient way for customers to replenish consumable items.Because the facility does not rely upon the customer to identify theneed for replenishment, the facility enables replenishment to beinitiated at a time early enough to accommodate a typical deliverycycle. Further, because the facility proactively initiates contact withthe customer, it overcomes the failure by many customers to realize thata Web merchant can be gainfully used to replenish the items in question.It can therefore be seen that the facility provides significant utility.

The facility preferably uses past purchases to establish replenishmenttarget dates for particular items on behalf of particular users. Forexample, for products that are used up, such as shaving gel, thefacility preferably establishes a target date based upon the last dateon which the item was purchased, the quantity of the item thenpurchased, and an estimate of the rate at which the item will bedepleted. The facility preferably arrives at such a rate by utilizing anaverage household consumption rate (one that, e.g., indicates that anaverage household consumes 0.25 oz. of shaving gel per day); by usinginformation provided by the customer, such as a survey response from thecustomer that indicates that on an average day, two shaving sessionsoccur; or based on observed information about the customer and thecustomer's household, such as the historical frequency with which thecustomer has purchased the item, the historical frequency with which thecustomer has purchased a complement of the item (e.g., replacementshaver blades) or lifestyle information about the customer (e.g., thatthe customer recently purchased a beard trimmer and therefore probablyhas a beard and will consume less shaving gel). For items that expire ata particular time irrespective of the rate of their consumption, such asmilk, the facility may use the expiration date as the target date. Also,for some purchasers, the availability of a new or improved replacementfor an item that they are using creates an impetus to replace, or“replenish” the item. For example, certain purchasers will want topurchase the next version of a particular type of personal digitalassistant as soon as it is available, the new album from a particularmusical artist as soon as it is available, etc. Accordingly, for thesecustomers and items, the facility preferably establishes a target datebased upon the date on which the new or improved version will becomeavailable.

FIG. 1 is a high-level block diagram showing the environment in whichthe facility preferably operates. The diagram shows several customercomputer systems, such as customer computer systems 110, 120, and 130.Each of the customer computer systems preferably has one or moreprograms for receiving information on a customer's behalf. For example,customer computer system 110 has a Web client computer program 111 foraccessing Web pages on a Web server. Customer computer system 120 has anemail client 121 for receiving email messages. Customer computer system130 has an icq client 131 for receiving icq instant messages.

The customer computer systems are connected via the Internet 140 to aserver computer system 150. The server computer system 150 contains amemory 160. The memory preferably contains the replenishment facility161, a replenish table 162 and supplemental tables 163 for storinginformation used by the facility, a Web server program 164 for servingWeb pages, an email program 165 for sending email messages, and an icqprogram 166 for sending icq instant messages. While items 161-166 arepreferably stored in memory while being used, those skilled in the artwill appreciate that these items, or portions of them, may betransferred between memory and a persistent storage device 173 forpurposes of memory management and data integrity. The server computersystem further contains one or more central processing units in (CPU)171 for executing programs, such as programs 161, 164, 165, and 166, anda computer-readable medium drive 172, such as a CD-ROM drive, forreading information or installing programs such as the facility fromcomputer-readable media, such as a floppy disk, a CD-ROM, or a DVD.

While preferred embodiments are described in terms of the environmentdescribed above, those skilled in the art will appreciate that thefacility may be implemented in a variety of other environments,including a single, monolithic computer system, as well as various othercombinations of computer systems or similar devices connected in variousways.

To more fully illustrate its implementation and operation, the facilityis described in conjunction with an example. FIG. 2 is a display diagramshowing a sample replenishment suggestion provided by the facility. Thereplenishment suggestion may preferably be sent to a customer as anemail message, as an icq instant message, or as another type of message.The replenishment suggestion may further be presented to customer as aWeb page, either when the customer visits a Web site for thereplenishment facility, or when the customer visits another, associatedWeb site. The replenishment suggestion may also be provided in audioform, such as in an automatically initiated telephone call or anautomatically delivered voicemail message. Those skilled in the art willappreciate that there are additional media through which the facilitycan also provide replenishment suggestions.

The sample replenishment suggestion 200 indicates that it is time toreplenish one or more items, and includes information 210 describing theitem or items that are to be replenished. The information 210 preferablyincludes, for each item, the quantity to be ordered, a description ofthe item, the item's unit price, and the delivery date for the item. Toorder the listed items in the listed quantities on the listed deliverydates, the customer simply clicks an “order as above” button 221.Clicking on the “order as above” button is preferably the onlyinteraction that the user needs to perform to order the listed items inthe listed quantities on the listed delivery dates. To change thequantity of one of the items, before clicking the “order as above”button, the customer replaces the suggested quantity with a newquantity. For example, to order three cartons of milk instead of thesuggested quantity of two cartons of milk, the customer replaces thequantity “2” in text box 213 with the quantity “3”. To change thedelivery date of one of the items, before clicking the “order as above”button, the customer replaces the suggested delivery date with a newdelivery date. For example, to order the shaving gel for delivery onNovember 20th rather than on November 30th as suggested, the customerreplaces the date “11/30/99” in text box 212 with the date “11/20/99”.

If the customer does not wish to place an order in response to thereplenishment suggestion, the customer may decline the suggestion byclicking a “no thanks” button 223, or may defer the suggestion untillater by clicking a “remind me again in a few days” button 222.

FIGS. 3-5 are data structure diagram showing data tables preferably usedby the facility. FIG. 3 is a data structure diagram showing samplecontents of a replenish table. The replenish table 300 is used toidentify items that need replenishing, and is generated by the facilitybased on customer order history, other information obtained by thecustomer, statistical measures of item usage, information about theavailability of item upgrades, and other similar information. Each rowof the replenish table corresponds to a single item that will at somepoint need replenishing. Each row is divided into five fields, includinga target date field 301 indicating the date for which replenishmentshould be suggested; a customer identifier field 302 identifying thecustomer to whom a replenishment suggestion is to be provided; an itemidentifier field 303 identifying the item to be replenished; a quantityfield 304 indicating the quantity of the item that is to be suggested;and a replenishment interval field 305 identifying the time interval atwhich the specified quantity should be replenished. For example, row 311indicates that it should be suggested to customer number 15 that one ofitem number 110 should be replenished on Nov. 30, 1999, and every 48days thereafter. Because a typical replenish table may contain a verylarge number of rows, the facility preferably maintains an index on itstarget date field and/or on its customer identifier field to expediteaccess to the replenish table.

FIG. 4 is a data structure diagram showing sample contents of an itemtable. The item table 400 is used to store information about particularitems. Each row of the item table corresponds to one item. Each row isdivided into three fields, including an item identifier field 401containing the item identifier for the item, a description field 402containing a description of the item, and a unit price field 403indicating the unit price of the item. For example, row 411 indicatesthat item number 110 has description “Pinnacle shaving gel—12 oz. can”,and unit price $1.69.

FIG. 5 is a data structure diagram showing sample contents of a customertable. The customer table 500 is used to store information aboutcustomers. Each row of the customer table corresponds to one customer.Each row is divided into four fields, including a customer identifierfield 501 containing the customer identifier for the customer; acustomer name field 502 containing the customer's name; a contactinformation type field 503 indicating how the customer is to becontacted with replenishment suggestions; and a contact informationfield 504 contain an address to be used to contact the customer withreplenishment suggestions. For example, row 511 indicates that the nameof customer number 15 is “Mr. King,” and that he is to receivereplenishment suggestions via email at the email address“king@connectnet.”

FIG. 6 is a flow diagram showing the steps preferably performed by thefacility in order to present replenishment suggestions. Each day thefacility loops once through steps 601-612. In step 602, the facilityidentifies any rows of the replenish table having target dates within apreselected window of the current date. As an example, the window may beselected to be about two weeks long to provide plenty of time for theitems to be shipped to customers. In step 603, the facility loopsthrough steps 604-610 once for each distinct customer identifier amongthe rows identified in step 602. In step 604, the facility selects rowsamong the identified rows having the current customer identifier. Instep 605, the facility generates a replenishment suggestion using theselected rows of replenish table and the contents of supplementaltables, such as the item table and the customer table, then delivers thereplenishment suggestion to the customer having the current customeridentifier.

In step 606, if the customer responds to the replenishment suggestionwith an order request, the facility continues in step 607. If thecustomer responds to the replenishment suggestion with a deferralrequest, the facility continues in step 609. If the customer response tothe replenishment suggestion with a decline request, then the facilitycontinues in step 610. To process an order request, in step 607, thefacility places an order for the selected quantities of items to arriveon the selected delivery dates. In step 608, the facility updates theselected rows in accordance with the placed order, such as by setting anew, later target date for the ordered items for further replenishment.After step 608, the facility continues in steps 611. To process adeferral request, in step 609, the facility updates the selected rows inaccordance with the deferral request, such as by setting a new, latertarget date for which to repeat the replenishment suggestion. After step609, the facility continues in step 611. To process a decline request,in step 610, the facility deletes the selected rows. In step 611, thefacility loops back to step 603 to process the next distinct customeridentifier among the identified rows. After all of the distinct customeridentifiers among the identified rows have been processed, the facilitycontinues in step 612. The step 612, the facility loops back to step 601to process the next day.

In an alternative preferred embodiment, the facility is implementedusing an event-driven architecture. In this embodiment, the facilityincludes an event-raising component that raises an event each time anitem is to be replenished, and an event-handling component that, foreach such event, places an order for the item specified by the event,optionally first confirming the order with the client as shown in FIGS.2 and 6. The facility's event raising component preferably raises areplenishment event when a target date is reached, or when otherinformation indicates that replenishment should occur, such as when anindication is received that an improved replacement for a particularitem is now available.

It will be understood by those skilled in the art that theabove-described facility could be adapted or extended in various ways.For example, the facility is not limited to items that are tangibleproducts. Rather, the facility may also initiate the replenishment ofitems that are data products, such as compilations of information orcomputer programs, or the replenishment of service items, or thereplenishment of items of other types. Additionally, rather thanproviding a replenishment suggestion that must be responded to for eachreplenishment cycle, the facility may instead obtain the customer'spreapproval for automatic replenishment, and thereafter automaticallysubmit an order for each replenishment cycle without further approval bythe customer. While the foregoing description makes reference topreferred embodiments, the scope of the invention is defined solely bythe claims that follow and the elements recited therein.

I claim:
 1. A method in a data processing system for automaticallyinitiating the replenishment of a consumable product, comprising: on afirst date, fulfilling an order by a consumer for a first instance ofthe product; based upon the first date, estimating, by a computerprocessor, a second date by which the first instance of the product willbe fully consumed, wherein the second date is based at least in partupon a replenishment time interval between prior purchases, each of theprior purchases including at least one purchase of a complement of theconsumable product; before the second date, providing to the consumer anindication that the product should be replenished, the indicationincluding a control usable by the consumer to request replenishment ofthe product by performing a single action; receiving an indication thatthe control was used by the consumer to request replenishment of theproduct; and in response solely to receiving the indication, ordering asecond instance of the product to replenish the first instance.
 2. Themethod of claim 1 wherein the control is usable by the consumer torequest replenishment of the first instance of the product by performinga single action of selecting the control provided in the indication. 3.The method of claim 1 wherein the second instance of the product is aphysical article.
 4. The method of claim 1 wherein the second instanceof the product is a data product.
 5. The method of claim 1 wherein thesecond instance of the product is a service.
 6. The method of claim 1wherein the second date is determined based on an average life span ofthe first instance of the product.
 7. The method of claim 1 wherein thesecond date is determined based on an expiration date for the firstinstance of the product.
 8. The method of claim 1 wherein the seconddate is determined based on an availability date for the second instanceof the product.
 9. The method of claim 1 wherein the second date isdetermined based on a length of intervals between prior purchases of theproduct.
 10. The method of claim 1 wherein the consumer has made aplurality of prior purchases of a complement of the product, and whereinthe second date is determined based on a length of intervals between theplurality of prior purchases of the complement of the product.
 11. Themethod of claim 1 wherein a second date is determined based on the sizeof the first instance of the product.
 12. The method of claim 1 whereinthe second date is determined based on information provided by theconsumer.
 13. The method of claim 1 wherein a second date is determinedbased on information about the consumer's lifestyle.
 14. The method ofclaim 1 wherein the consumer has made a plurality of prior purchases ofthe consumable product, and wherein the second date is determined basedon a length of intervals between the plurality of prior purchases of theconsumable product.
 15. The method of claim 1 wherein a second consumerhas made a plurality of prior purchases of the consumable product, andwherein the second date is determined based on a length of intervalsbetween the plurality of prior purchases of the consumable product madeby the second consumer.
 16. The method of claim 1 wherein the seconddate is determined based on prior purchases by the consumer of aplurality of complements of the first item.
 17. The method of claim 1wherein the second date is determined based on a historical frequencywith which the consumer has purchased a complement of the consumableproduct.
 18. The method of claim 1 wherein the indication that theproduct should be replenished is transmitted to the consumer at a timeat which the consumer is not engaged in an electronic shopping activity.19. The method of claim 1 wherein the steps of estimating the targetdate, providing the indication, and ordering the second item all occurwithout intervention of the consumer other than the use of the controlby the consumer to request replenishment.
 20. A method in a dataprocessing system for ordering an item, comprising: on a first date,receiving an order by a consumer for a first item; determining, by acomputer processor, a target date for suggesting replenishment of thefirst item, the target date based at least upon the first date, theidentity of the first item, and a replenishment time interval betweenprior purchases, each of the prior purchases including at least onepurchase of a complement of the first item; on the target date,providing to the consumer an indication that the first item should bereplenished, the indication including a user interface control usable bythe consumer to request replenishment of the first item; receiving anindication that the control was used by the consumer to requestreplenishment of the first item; and in response solely to receiving theindication, ordering a second item to replenish the first item.
 21. Themethod of claim 20 wherein the control is usable by the consumer torequest replenishment of the first item by performing a single action.22. The method of claim 20 wherein the second item is a physicalarticle.
 23. The method of claim 20 wherein the second item is a dataproduct.
 24. The method of claim 20 wherein the second item is aservice.
 25. The method of claim 20 wherein the target date isdetermined based on an average life span of the first item.
 26. Themethod of claim 20 wherein the target date is determined based on anexpiration date for the first item.
 27. The method of claim 20 whereinthe target date is determined based on an availability date for thesecond item.
 28. The method of claim 20 wherein the target date isdetermined based on a length of intervals between prior purchases of thefirst item.
 29. The method of claim 20 wherein the consumer has made aplurality of prior purchases of a complement of the first item, andwherein the target date is determined based on a length of intervalsbetween the plurality of prior purchases of the complement of the firstitem.
 30. The method of claim 20 wherein a target date is determinedbased on the size of the first item.
 31. The method of claim 20 whereinthe target date is determined based on information provided by theconsumer.
 32. The method of claim 20 wherein a target date is determinedbased on information about the consumer's lifestyle.
 33. The method ofclaim 20 wherein the consumer has made a plurality of prior purchases ofthe first item, and wherein the target date is determined based on alength of intervals between the plurality of prior purchases of thefirst item.
 34. The method of claim 20 wherein a second consumer hasmade a plurality of prior purchases of the first item, and wherein thetarget date is determined based on a length of intervals between theplurality of prior purchases of the first item made by the secondconsumer.
 35. The method of claim 20 wherein the target date isdetermined based on prior purchases by the consumer of a plurality ofcomplements of the first item.
 36. The method of claim 20 wherein thetarget date is determined based on a historical frequency with which theconsumer has purchased a complement of the first item.
 37. The method ofclaim 20 wherein the indication that the product should be replenishedis transmitted to the consumer at a time at which the consumer is notengaged in an electronic shopping activity.
 38. The method of claim 20wherein the steps of estimating the target date, providing theindication, and ordering the second item all occur without interventionof the consumer other than the use of the control by the consumer torequest replenishment.